/*
    Speedbump aka Project Kimbula
    Copyright (C) 2010  Ping Shin Ching

    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program.  If not, see http://www.gnu.org/licenses.

	Ping Shin Ching
	righteous.ninja@gmail.com OR ping_sc@hotmail.com
	More information at http://www.tidytutorials.com/p/speedbump.html
 */


#ifndef init_h
#define init_h

#include "../include/interfaces/initinterface.h"

#define INITPARAM_STRING	2048
#define INITPARAM_SECTIONS	16	
//#define MAX_INIT_PARAMS		1000

typedef struct{
	char* tag;
	char* value;
}InitParams;


class InitParameters : public InitInterface{
	static char totrim[5];
	void initTrim(char*);
	static const char* zerostring;

public:
	InitParameters();
	~InitParameters();
	int ReadInitFile(const char*);
	void* DisplayInitParameters();
	const char* GetInitParameter(const char*);
	char* sectionName;
	InitParameters* GetSectionByName(const char*);
	InitParameters* GetSectionByIndex(int);

private:
	
	InitParams** params;
	InitParameters *sections[INITPARAM_SECTIONS];
	int numberofsections;
};

#endif
